package com.example.exceldemo.model;

import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.experimental.Accessors;

import java.time.LocalDateTime;

/**
 * 文档生成任务实体
 */
@Data
@Accessors(chain = true)
@TableName("doc_generation_task")
public class DocGenerationTask {
    
    /** 主键ID */
    private Long id;
    
    /** 任务ID */
    private String taskId;
    
    /** 上传的Excel文件路径 */
    private String filePath;
    
    /** 任务状态：PENDING, PROCESSING, COMPLETED, FAILED */
    private String status;
    
    /** 任务进度(0-100) */
    private Integer progress;
    
    /** 输出目录 */
    private String outputDir;
    
    /** 选择的需求ID列表，JSON格式 */
    private String selectedReqs;
    
    /** 错误信息 */
    private String errorMessage;
    
    /** 创建时间 */
    private LocalDateTime createTime;
    
    /** 完成时间 */
    private LocalDateTime completeTime;
    
    /** 任务状态枚举 */
    public enum TaskStatus {
        /** 等待中 */
        PENDING,
        
        /** 处理中 */
        PROCESSING,
        
        /** 已完成 */
        COMPLETED,
        
        /** 失败 */
        FAILED
    }
} 